// 创建多个promise
const p1 = new Promise((resolve, reject) => {
  setTimeout(() => {
    reject(11111)
  }, 1000)
})

const p2 = new Promise((resolve, reject) => {
  setTimeout(() => {
    resolve(22222)
  }, 2000)
})

const p3 = new Promise((resolve, reject) => {
  setTimeout(() => {
    resolve(33333)
  }, 3000)
})

// race 竞赛
// 只要有一个promise变成fulfilled状态，那么就结束
// 意外: 如果有先拒绝的，就会直接拒绝
Promise.race([p1, p2, p3]).then(res => {
  console.log(res);
}).catch(err => {
  console.log(err);
})
